babl: improve alpha calc. in pal+alpha -> rgba conversion
authorEll <ell_se@yahoo.com>
Sat, 30 Sep 2017 11:44:41 +0000 (07:44 -0400)
committerEll <ell_se@yahoo.com>
Sat, 30 Sep 2017 12:01:13 +0000 (08:01 -0400)
... in particular, so that fully opaque pixels remain fully opaque

babl/babl-palette.c

index 8b8e529bbaf6dc3ff360805de399dcc0d38a5c23..823ff0c3421c6ae68d41404188786976f067b544 100644 (file)
@@ -413,7 +413,7 @@ pala_u8_to_rgba_u8 (Babl          *conversion,
 
       palpx = pal->data_u8 + idx * 4;
       memcpy (dst, palpx, sizeof(char)*4);
-      dst[3] = (dst[3] * src[1]) >> 8;
+      dst[3] = (dst[3] * src[1] + 128) / 255;
 
       src += sizeof (char) * 2;
       dst += sizeof (char) * 4;